package com.css.dzj.zfjg.modules.operatingabnormal.entity;

import org.hibernate.annotations.GenericGenerator;

import javax.persistence.*;
import java.util.Objects;

/**
 * 企业经营异常名录信息
 */
@Entity
@Table(name = "JG_LHJG_OPERATING_ABNORMAL", schema = "DZJZFJG", catalog = "")
public class JgLhjgOperatingAbnormalEntity {
    /**
     * 企业经营异常名录信息ID
     */
    private String operatingAbnormalId;
    /**
     * 任务编码，关联到联合监管任务
     */
    private String taskNo;
    /**
     * 列入日期
     */
    private String abnormalPutdate;
    /**
     * 企业名称
     */
    private String enterpriseName;
    /**
     * 企业统一社会信用代码
     */
    private String enterpriseCreditCode;
    /**
     * 列入原因
     */
    private String abnormalPutrs;
    /**
     * 列入决定机关
     */
    private String abnormalPutdptm;
    /**
     * 移出日期
     */
    private String abnormalListDate;
    /**
     * 移出原因
     */
    private String abnormalListRreasons;
    /**
     * 移出决定机关
     */
    private String abnormalListPutdptm;

    @Id
    @Column(name = "OPERATING_ABNORMAL_ID")
    @GeneratedValue(generator = "idGenerator")
    @GenericGenerator(name = "idGenerator", strategy = "com.css.dzj.zfjg.common.util.SnowflakeId")
    public String getOperatingAbnormalId() {
        return operatingAbnormalId;
    }

    public void setOperatingAbnormalId(String operatingAbnormalId) {
        this.operatingAbnormalId = operatingAbnormalId;
    }

    @Basic
    @Column(name = "TASK_NO")
    public String getTaskNo() {
        return taskNo;
    }

    public void setTaskNo(String taskNo) {
        this.taskNo = taskNo;
    }

    @Basic
    @Column(name = "ABNORMAL_PUTDATE")
    public String getAbnormalPutdate() {
        return abnormalPutdate;
    }

    public void setAbnormalPutdate(String abnormalPutdate) {
        this.abnormalPutdate = abnormalPutdate;
    }

    @Basic
    @Column(name = "ENTERPRISE_NAME")
    public String getEnterpriseName() {
        return enterpriseName;
    }

    public void setEnterpriseName(String enterpriseName) {
        this.enterpriseName = enterpriseName;
    }

    @Basic
    @Column(name = "ENTERPRISE_CREDIT_CODE")
    public String getEnterpriseCreditCode() {
        return enterpriseCreditCode;
    }

    public void setEnterpriseCreditCode(String enterpriseCreditCode) {
        this.enterpriseCreditCode = enterpriseCreditCode;
    }

    @Basic
    @Column(name = "ABNORMAL_PUTRS")
    public String getAbnormalPutrs() {
        return abnormalPutrs;
    }

    public void setAbnormalPutrs(String abnormalPutrs) {
        this.abnormalPutrs = abnormalPutrs;
    }

    @Basic
    @Column(name = "ABNORMAL_PUTDPTM")
    public String getAbnormalPutdptm() {
        return abnormalPutdptm;
    }

    public void setAbnormalPutdptm(String abnormalPutdptm) {
        this.abnormalPutdptm = abnormalPutdptm;
    }

    @Basic
    @Column(name = "ABNORMAL_LIST_DATE")
    public String getAbnormalListDate() {
        return abnormalListDate;
    }

    public void setAbnormalListDate(String abnormalListDate) {
        this.abnormalListDate = abnormalListDate;
    }

    @Basic
    @Column(name = "ABNORMAL_LIST_RREASONS")
    public String getAbnormalListRreasons() {
        return abnormalListRreasons;
    }

    public void setAbnormalListRreasons(String abnormalListRreasons) {
        this.abnormalListRreasons = abnormalListRreasons;
    }

    @Basic
    @Column(name = "ABNORMAL_LIST_PUTDPTM")
    public String getAbnormalListPutdptm() {
        return abnormalListPutdptm;
    }

    public void setAbnormalListPutdptm(String abnormalListPutdptm) {
        this.abnormalListPutdptm = abnormalListPutdptm;
    }

    @Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (o == null || getClass() != o.getClass()) return false;
        JgLhjgOperatingAbnormalEntity that = (JgLhjgOperatingAbnormalEntity) o;
        return Objects.equals(operatingAbnormalId, that.operatingAbnormalId) &&
                Objects.equals(taskNo, that.taskNo) &&
                Objects.equals(abnormalPutdate, that.abnormalPutdate) &&
                Objects.equals(enterpriseName, that.enterpriseName) &&
                Objects.equals(enterpriseCreditCode, that.enterpriseCreditCode) &&
                Objects.equals(abnormalPutrs, that.abnormalPutrs) &&
                Objects.equals(abnormalPutdptm, that.abnormalPutdptm) &&
                Objects.equals(abnormalListDate, that.abnormalListDate) &&
                Objects.equals(abnormalListRreasons, that.abnormalListRreasons) &&
                Objects.equals(abnormalListPutdptm, that.abnormalListPutdptm);
    }

    @Override
    public int hashCode() {
        return Objects.hash(operatingAbnormalId, taskNo, abnormalPutdate, enterpriseName, enterpriseCreditCode, abnormalPutrs, abnormalPutdptm, abnormalListDate, abnormalListRreasons, abnormalListPutdptm);
    }
}
